package vip.web3.api.service.biz;

import com.baomidou.mybatisplus.extension.service.IService;
import vip.web3.api.entity.biz.UserEntity;
import vip.web3.api.form.user.*;
import vip.web3.api.vo.biz.InviteUserVo;
import vip.web3.api.vo.biz.TeamInfoVo;
import vip.web3.api.vo.biz.UserInfoVo;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

/**
 * aut-horlilei
 */
public interface UserService extends IService<UserEntity> {
    String register(UserEntity entity);

    String login(LoginForm form);

    void logout();

    void updatePwd(EditForm form);

    void edit(EditForm form);

    void authApply(AuthApplyForm form);

    void updateMobile(EditForm form);

    UserInfoVo info();

    List<InviteUserVo> listInvite(Integer level);

    TeamInfoVo teamInfo();

    UserEntity getUserByToken(HttpServletRequest request);

}
